#include "wx/wxprec.h"
#include "wx/xrc/xh_radbt.h"

IMPLEMENT_DYNAMIC_CLASS( wxRadioButtonXmlHandler, wxXmlResourceHandler )

wxRadioButtonXmlHandler::wxRadioButtonXmlHandler()
  : wxXmlResourceHandler() {
  XRC_ADD_STYLE( wxRB_GROUP );
  XRC_ADD_STYLE( wxRB_SINGLE );
  AddWindowStyles();
}

wxObject *wxRadioButtonXmlHandler::DoCreateResource() {
  XRC_MAKE_INSTANCE( control, wxRadioButton )
  control->Create( m_parentAsWindow,
                   GetID(),
                   GetText( wxT( "label" ) ),
                   GetPosition(), GetSize(),
                   GetStyle(),
                   wxDefaultValidator,
                   GetName() );
  control->SetValue( GetBool( wxT( "value" ), 0 ) );
  SetupWindow( control );
  return control;
}

bool wxRadioButtonXmlHandler::CanHandle( wxXmlNode *node ) {
  return IsOfClass( node, wxT( "wxRadioButton" ) );
}
